(* data types for states, control nodes ... *)

open Ast;;

type controlnode = ControlNode of int;;

type controlnodelist = CnList of controlnode list;;

type cntriple = CNTriple of controlnode * Ast.label * (string * Ast.value) list;;

type wrappedcntriple = Visited of controlnode * Ast.label * (string * Ast.value) list | Unvisited of controlnode * Ast.label * (string * Ast.value) list;;

exception Label_missmatch of string;;

